package tree;

/**
 * @ClassName LC111
 * @Description TODO
 * @Author ZJX
 * @Date 2024/10/22 11:00
 * @Version 1.0
 */
public class LC111 {
    public int minDepth(TreeNode root) {
        if (root == null) {
            return 0;
        }

        if (root.left == null) {
            return minDepth(root.right) + 1;
        }

        // 如果右子树为空，返回左子树的深度 + 1
        if (root.right == null) {
            return minDepth(root.left) + 1;
        }

        // 如果左右子树都存在，返回较小的深度 + 1
        return Math.min(minDepth(root.left), minDepth(root.right)) + 1;
    }

}
